pkgname=msm-modem
pkgver=7
pkgrel=4
pkgdesc="Common support for Qualcomm MSM modems"
url="https://postmarketos.org/"
arch="armhf armv7 aarch64"
license="GPL-3.0-or-later"
depends="rmtfs"
subpackages="
	$pkgname-downstream
	$pkgname-downstream-openrc:downstream_openrc
	$pkgname-openrc
	$pkgname-uim-selection:uim_selection
	$pkgname-uim-selection-openrc:uim_selection_openrc
"

source="
	msm-modem-downstream.initd
	msm-modem-uim-selection.confd
	msm-modem-uim-selection.initd
	udev-downstream.rules
"
options="!check"

package() {
	mkdir -p "$pkgdir"
}

uim_selection() {
	pkgdesc="$pkgdesc (UIM selection)"
	depends="$pkgname libqmi qmi-utils"

	mkdir -p "$subpkgdir"
}

uim_selection_openrc() {
	install_if="$pkgname-uim-selection=$pkgver-r$pkgrel openrc"
	install="$subpkgname.post-install"

	install -Dm644 "$srcdir/$pkgname-uim-selection.confd" \
		"$subpkgdir/etc/conf.d/$pkgname-uim-selection"
	install -Dm755 "$srcdir/$pkgname-uim-selection.initd" \
		"$subpkgdir/etc/init.d/$pkgname-uim-selection"
}

downstream() {
	pkgdesc="$pkgdesc (downstream)"
	depends="$pkgname libqipcrtr4msmipc libsmdpkt_wrapper keepfileopen"

	install -Dm644 "$srcdir/udev-downstream.rules" "$subpkgdir/usr/lib/udev/rules.d/55-$pkgname.rules"
}

downstream_openrc() {
	install_if="$pkgname-downstream=$pkgver-r$pkgrel openrc"
	install="$subpkgname.post-install"

	install -Dm755 "$srcdir/$pkgname-downstream.initd" \
		"$subpkgdir/etc/init.d/$pkgname-downstream"
}

openrc() {
	install_if="$pkgname=$pkgver-r$pkgrel openrc"
	depends="rmtfs-openrc"
	install="$subpkgname.post-install"
	mkdir -p "$subpkgdir"
}

sha512sums="
3172f8c409f552f13d1da29f14ab6c79072cd6da4acab151a1a0ea1858a416974456852609f14fe29cf97a6a45e60b99d0a57ddcde751da243ee5ac6fa8b672c  msm-modem-downstream.initd
abc985c76170601a22a1d5ab0c68bdf63fa2be2796593048ea3ba0d7e5cd26b2fcee2043703e46c2910c53b01e9e8092b7a8e715d57baf243a5f4612dd595443  msm-modem-uim-selection.confd
9c91febb48409e574695bb04c989b361db9f7678321c6935772c19efae7dd16956bd4b91143b475adf898344225d4095448b95ccb824ced305966ea96b9ae32f  msm-modem-uim-selection.initd
2a511c2e249d0ec5a52f04ffe1ef3d29cf3c4813143b103e54879ff89176ea45b1a5ffe21cb7dc2f1cdd84c3102ba45ef9926ed37e00b1ae12a36d01de35ea5a  udev-downstream.rules
"
